// 封装分类数据业务相关的代码
import { ref, onMounted, } from 'vue'
import { getTopCategoryAPI } from '@/apis/category';
import { onBeforeRouteUpdate,useRoute } from 'vue-router';


export function useCategory() {
// 获取分类数据
const categoryData = ref({})
const route = useRoute()//获取路由信息，详见路由表

const getCategory = async (id = route.params.id) => {
    const res = await getTopCategoryAPI(id)
    categoryData.value = res.result
    // console.log('Category-->categoryData:', categoryData.value)
}
onMounted(() => {
    getCategory()
})

// 目标：路由参数变化的时候，，可以把分类接口程序发送
onBeforeRouteUpdate((to) => {
    // console.log('路由变化了')
    // 存在问题：使用最新的路由参数请求最新的分类数据
    // console.log('to:', to)
    // console.log('from:', from)
    getCategory(to.params.id)
})
  // 3.返回数据
  return {
    categoryData
  }
}